<?php
/**
* Classe de controle
* Cria a visualização da pesquisa de um objeto : Pessoa
* @package Sistema
* @subpackage pessoa
*/
class CPessoa_verPesquisa extends controlePadraoPesquisa{
	/**
	 * metodo de apresentação do negocio
	 * @param negocio objeto para a apresentação
	 */
	public function montarApresentacao(negocio $negocio, $tipo = 'edicao'){
		parent::montarApresentacao($negocio,$tipo);
		
		$btLimparUsuario = new VEtiquetaHtml('span');
		$btLimparUsuario->passarId('btLimparUsuario');
		$btLimparUsuario->passarClass('ui-icon ui-icon-trash');
		$btLimparUsuario->passarTitle('Clique aqui para limpar o campo usuário');

		$this->visualizacao->btLimparUsuario = $btLimparUsuario;

		$this->visualizacao->nmUsuario = VComponente::montar('caixa de entrada', 'nmUsuario', '');
		$this->visualizacao->nmUsuario->passarSize(27);

		$nmUsuario = '';
		$idUsuario = '';
		
		if($negocio->idUsuario)
		{
			$idUsuario = $negocio->pegarIdUsuario();
			$nUsuario = new NUsuario();
			$nUsuario->ler($negocio->pegarIdUsuario());
			$nmUsuario = $nUsuario->pegarNmLogin();
			$this->visualizacao->nmUsuario->passarDisabled('disabled');
			$btLimparUsuario->passarStyle('display:inline-block;vertical-align:-3px;margin-left: 3px;cursor:pointer;');
		}else{
			$btLimparUsuario->passarStyle('display:none;vertical-align:-3px;margin-left: 3px;cursor:pointer;');
		}

		$this->visualizacao->idUsuario->passarValue($idUsuario);
		$this->visualizacao->nmUsuario->passarValue($nmUsuario);

		$this->visualizacao->dtNascimentoInicio = clone $this->visualizacao->dtNascimento;
		$this->visualizacao->dtNascimentoFim = clone $this->visualizacao->dtNascimento;

		$this->visualizacao->dtNascimentoInicio->passarId('dtNascimentoInicio');
		$this->visualizacao->dtNascimentoInicio->passarName('dtNascimentoInicio');
		$this->visualizacao->dtNascimentoFim->passarId('dtNascimentoFim');
		$this->visualizacao->dtNascimentoFim->passarName('dtNascimentoFim');

		if(isset($_POST['dtNascimentoInicio'])){ $this->visualizacao->dtNascimentoInicio->passarValue($_POST['dtNascimentoInicio']); }
		if(isset($_POST['dtNascimentoFim'])){ $this->visualizacao->dtNascimentoFim->passarValue($_POST['dtNascimentoFim']); }
	}
	/**
	 * Método de apresentação da listagem
	 * @param visualizacao $visualizacao
	 * @param colecao $colecao
	 * @param pagina $pagina
	 */
	public static function montarListagem(visualizacao $visualizacao,colecao $colecao,pagina $pagina, $entidade = null){
		parent::montarListagem($visualizacao,$colecao,$pagina, $entidade);
		$visualizacao->listagem->adicionarColunaPersonalizada('Usuário', 'CPessoa_verPesquisa::nomeUsuario', '10%', null, -1);
		//$visualizacao->listagem->adicionarColunaPersonalizada('Tipo', 'CPessoa_verPesquisa::tipoPessoa', '5%', null, -1);
		//$this->visualizacao->listagem->adicionarColunaPersonalizada('Tarefa', 'CPessoa_verPesquisa::novaTarefa', '5%', null, 10000000);
	}
/**
	* Retorno da apresentação do tipo de pessoa .
	*/
	public static function nomeUsuario($nPessoa){
		$nUsuario = new NUsuario();
		$nUsuario->ler($nPessoa->pegarIdUsuario());
		return $nUsuario->pegarNmLogin();
		
	}
	/**
	* Método que define o objeto de negócio que executará a pesquisa
	*/
	public function definirFiltro(){
		parent::definirFiltro();
		if($_POST)
		{
			if($_POST['dtNascimentoInicio'] && $_POST['dtNascimentoFim'])
			{
				$this->filtro->passarDtNascimento(operador::entre($_POST['dtNascimentoInicio'], $_POST['dtNascimentoFim']));;
			}
		}
	}
	/**
	* Retorno da apresentação do tipo de pessoa .
	*/
	public static function tipoPessoa($nPessoa){
		$imagem = new VEtiquetaHtml('img');
		switch($nPessoa->pegarCsPessoa()){
			case 'FI':
			case 'FE':
				$imagem->passarAlt('Física');
				$imagem->passarSrc('pessoa/imagens/fisica.png')	;
			break;
			case 'JI':
			case 'JE':
				$imagem->passarAlt('Jurídica');
				$imagem->passarSrc('pessoa/imagens/empresa.png')	;
			break;
		}
		$center = new VEtiquetaHtml('center');
		$center->passarConteudo($imagem->__toString());
		return $center->__toString();
	}
	/**
	* Retorno da apresentação do tipo de pessoa .
	*/
	public static function novaTarefa($nPessoa){
		$imagem = new VEtiquetaHtml('img');
		$imagem->passarAlt('Nova');
		$imagem->passarSrc('pessoa/imagens/novaTarefa.png')	;
		$imagem->passarBorder(0);
		$link = new VEtiquetaHtml('a');
		$link->passarHref(sprintf('?c=%s&amp;pessoa=%s','CTarefa_verCriarNova',$nPessoa->pegarIdPessoa()));
		$link->passarConteudo($imagem->__toString());
		$link->passarTitle('Nova tarefa para: '.$nPessoa->pegarNmPessoa());
		$center = new VEtiquetaHtml('center');
		$center->passarConteudo($link->__toString());
		return $center->__toString();
	}
}
?>
